1 /*
2 
3 Boost Software License - Version 1.0 - August 17th, 2003
4 
5 Permission is hereby granted, free of charge, to any person or organization
6 obtaining a copy of the software and accompanying documentation covered by
7 this license (the "Software") to use, reproduce, display, distribute,
8 execute, and transmit the Software, and to prepare derivative works of the
9 Software, and to permit third-parties to whom the Software is furnished to
10 do so, all subject to the following:
11 
12 The copyright notices in the Software and this entire statement, including
13 the above license grant, this restriction and the following disclaimer,
14 must be included in all copies of the Software, in whole or in part, and
15 all derivative works of the Software, unless such copies or derivative
16 works are solely in the form of machine-executable object code generated by
17 a source language processor.
18 
19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21 FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
22 SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
23 FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
24 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25 DEALINGS IN THE SOFTWARE.
26 
27 */ 
28 
29 module derelict.purple.accountopt;
30 
31 import derelict.glib.gtypes;
32 import derelict.glib.glibconfig;
33 import derelict.glib.glist;
34 import derelict.purple.prefs;
35 extern (C):
36 
37 alias _Anonymous_0 PurpleAccountOption;
38 alias _Anonymous_1 PurpleAccountUserSplit;
39 
40 struct _Anonymous_0
41 {
42 	PurplePrefType type;
43 	char* text;
44 	char* pref_name;
45 	union
46 	{
47 		gboolean boolean;
48 		int integer;
49 		char* string;
50 		GList* list;
51 	}
52 	gboolean masked;
53 }
54 
55 struct _Anonymous_1
56 {
57 	char* text;
58 	char* default_value;
59 	char field_sep;
60 	gboolean reverse;
61 }
62 
63 version(Derelict_Link_Static)
64 {
65     extern( C ) nothrow 
66     {
67         PurpleAccountOption* purple_account_option_new(PurplePrefType type, const(char)* text, const(char)* pref_name);
68         PurpleAccountOption* purple_account_option_bool_new(const(char)* text, const(char)* pref_name, gboolean default_value);
69         PurpleAccountOption* purple_account_option_int_new(const(char)* text, const(char)* pref_name, int default_value);
70         PurpleAccountOption* purple_account_option_string_new(const(char)* text, const(char)* pref_name, const(char)* default_value);
71         PurpleAccountOption* purple_account_option_list_new(const(char)* text, const(char)* pref_name, GList* list);
72         void purple_account_option_destroy(PurpleAccountOption* option);
73         void purple_account_option_set_default_bool(PurpleAccountOption* option, gboolean value);
74         void purple_account_option_set_default_int(PurpleAccountOption* option, int value);
75         void purple_account_option_set_default_string(PurpleAccountOption* option, const(char)* value);
76         void purple_account_option_set_masked(PurpleAccountOption* option, gboolean masked);
77         void purple_account_option_set_list(PurpleAccountOption* option, GList* values);
78         void purple_account_option_add_list_item(PurpleAccountOption* option, const(char)* key, const(char)* value);
79         PurplePrefType purple_account_option_get_type(const(PurpleAccountOption)* option);
80         const(char)* purple_account_option_get_text(const(PurpleAccountOption)* option);
81         const(char)* purple_account_option_get_setting(const(PurpleAccountOption)* option);
82         gboolean purple_account_option_get_default_bool(const(PurpleAccountOption)* option);
83         int purple_account_option_get_default_int(const(PurpleAccountOption)* option);
84         const(char)* purple_account_option_get_default_string(const(PurpleAccountOption)* option);
85         const(char)* purple_account_option_get_default_list_value(const(PurpleAccountOption)* option);
86         gboolean purple_account_option_get_masked(const(PurpleAccountOption)* option);
87         GList* purple_account_option_get_list(const(PurpleAccountOption)* option);
88         PurpleAccountUserSplit* purple_account_user_split_new(const(char)* text, const(char)* default_value, char sep);
89         void purple_account_user_split_destroy(PurpleAccountUserSplit* split);
90         const(char)* purple_account_user_split_get_text(const(PurpleAccountUserSplit)* split);
91         const(char)* purple_account_user_split_get_default_value(const(PurpleAccountUserSplit)* split);
92         char purple_account_user_split_get_separator(const(PurpleAccountUserSplit)* split);
93         gboolean purple_account_user_split_get_reverse(const(PurpleAccountUserSplit)* split);
94         void purple_account_user_split_set_reverse(PurpleAccountUserSplit* split, gboolean reverse);
95     }
96 }
97 else
98 {
99     extern( C ) nothrow 
100     {
101         alias da_purple_account_option_new = PurpleAccountOption* function(PurplePrefType type, const(char)* text, const(char)* pref_name);						
102         alias da_purple_account_option_bool_new = PurpleAccountOption* function(const(char)* text, const(char)* pref_name, gboolean default_value);				
103         alias da_purple_account_option_int_new = PurpleAccountOption* function(const(char)* text, const(char)* pref_name, int default_value);					
104         alias da_purple_account_option_string_new = PurpleAccountOption* function(const(char)* text, const(char)* pref_name, const(char)* default_value);		
105         alias da_purple_account_option_list_new = PurpleAccountOption* function(const(char)* text, const(char)* pref_name, GList* list);						
106         alias da_purple_account_option_destroy = void function(PurpleAccountOption* option);																	
107         alias da_purple_account_option_set_default_bool = void function(PurpleAccountOption* option, gboolean value);											
108         alias da_purple_account_option_set_default_int = void function(PurpleAccountOption* option, int value);													
109         alias da_purple_account_option_set_default_string = void function(PurpleAccountOption* option, const(char)* value);										
110         alias da_purple_account_option_set_masked = void function(PurpleAccountOption* option, gboolean masked);												
111         alias da_purple_account_option_set_list = void function(PurpleAccountOption* option, GList* values);													
112         alias da_purple_account_option_add_list_item = void function(PurpleAccountOption* option, const(char)* key, const(char)* value);						
113         alias da_purple_account_option_get_type = PurplePrefType function(const(PurpleAccountOption)* option);													
114         alias da_purple_account_option_get_text = const(char)* function(const(PurpleAccountOption)* option);													
115         alias da_purple_account_option_get_setting = const(char)* function(const(PurpleAccountOption)* option);													
116         alias da_purple_account_option_get_default_bool = gboolean function(const(PurpleAccountOption)* option);												
117         alias da_purple_account_option_get_default_int = int function(const(PurpleAccountOption)* option);														
118         alias da_purple_account_option_get_default_string = const(char)* function(const(PurpleAccountOption)* option);											
119         alias da_purple_account_option_get_default_list_value = const(char)* function(const(PurpleAccountOption)* option);										
120         alias da_purple_account_option_get_masked = gboolean function(const(PurpleAccountOption)* option);														
121         alias da_purple_account_option_get_list = GList* function(const(PurpleAccountOption)* option);															
122         alias da_purple_account_user_split_new = PurpleAccountUserSplit* function(const(char)* text, const(char)* default_value, char sep);						
123         alias da_purple_account_user_split_destroy = void function(PurpleAccountUserSplit* split);																
124         alias da_purple_account_user_split_get_text = const(char)* function(const(PurpleAccountUserSplit)* split);												
125         alias da_purple_account_user_split_get_default_value = const(char)* function(const(PurpleAccountUserSplit)* split);										
126         alias da_purple_account_user_split_get_separator = char function(const(PurpleAccountUserSplit)* split);													
127         alias da_purple_account_user_split_get_reverse = gboolean function(const(PurpleAccountUserSplit)* split);												
128         alias da_purple_account_user_split_set_reverse = void function(PurpleAccountUserSplit* split, gboolean reverse);										
129     }
130 
131     __gshared
132     {
133         da_purple_account_option_new purple_account_option_new; 
134         da_purple_account_option_bool_new purple_account_option_bool_new; 
135         da_purple_account_option_int_new purple_account_option_int_new; 
136         da_purple_account_option_string_new purple_account_option_string_new; 
137         da_purple_account_option_list_new purple_account_option_list_new; 
138         da_purple_account_option_destroy purple_account_option_destroy; 
139         da_purple_account_option_set_default_bool purple_account_option_set_default_bool; 
140         da_purple_account_option_set_default_int purple_account_option_set_default_int; 
141         da_purple_account_option_set_default_string purple_account_option_set_default_string; 
142         da_purple_account_option_set_masked purple_account_option_set_masked; 
143         da_purple_account_option_set_list purple_account_option_set_list; 
144         da_purple_account_option_add_list_item purple_account_option_add_list_item; 
145         da_purple_account_option_get_type purple_account_option_get_type; 
146         da_purple_account_option_get_text purple_account_option_get_text; 
147         da_purple_account_option_get_setting purple_account_option_get_setting; 
148         da_purple_account_option_get_default_bool purple_account_option_get_default_bool; 
149         da_purple_account_option_get_default_int purple_account_option_get_default_int; 
150         da_purple_account_option_get_default_string purple_account_option_get_default_string; 
151         da_purple_account_option_get_default_list_value purple_account_option_get_default_list_value; 
152         da_purple_account_option_get_masked purple_account_option_get_masked; 
153         da_purple_account_option_get_list purple_account_option_get_list; 
154         da_purple_account_user_split_new purple_account_user_split_new; 
155         da_purple_account_user_split_destroy purple_account_user_split_destroy; 
156         da_purple_account_user_split_get_text purple_account_user_split_get_text; 
157         da_purple_account_user_split_get_default_value purple_account_user_split_get_default_value; 
158         da_purple_account_user_split_get_separator purple_account_user_split_get_separator; 
159         da_purple_account_user_split_get_reverse purple_account_user_split_get_reverse; 
160         da_purple_account_user_split_set_reverse purple_account_user_split_set_reverse; 
161     }
162 }